Acyclic Dependencies Principle
https://wiki.c2.com/?AcyclicDependenciesPrinciple
The dependency structure between packages must not contain cyclic dependencies.